// 权限入口
function BasciPower_main() {
	return $.layout({
				id : 'basciPower_main_layout',
				items : [{
							order : ['organId.id->asc', 'roleSort->asc'],
							region : 'west',
							xtype : 'jgrid',
							clazz : BasicRole,
							id : 'basciPower_role_west',
							where : [['roleType', '=', '4']],
							top : [{
										xtype : 'textfield',
										name : 'roleName',
										op : 'like',
										text : '&nbsp;',
										labelWidth : 0,
										emptyText : '检索角色名称'
									}, $.search],
							columns : [{
										width : 150,
										text : '企业域',
										name : 'organId.organName',
										renderer : function(v, t) {
											t.tdCls = 'td-gray';
											return v;
										}
									}, {
										flex : 1,
										name : 'roleName'
									}],
							width : 350,
							style : $.border('Right'),
							listeners : {
								select : function(cmp, row) {
									var basicModel_main = $('basicModel_main');
									// 设置模块值
									$.post('admin/basciPower/listRoleModel', {
												roleId : row.get('id')
											}, function(result) {
												var data = result == '' ? [] : result.split(',');
												basicModel_main.clearCheckedNodes().setCheckedNodes(data).setTitle("正在分配【" + row.get('roleName')
														+ "】的模块");
											}, false);
								}
							}
						}, {
							header : {
								iconCls : 'fa-wrench',
								style : {
									backgroundColor : '#FF6A6A'
								},
								title : '角色模块设置'
							},
							caseType : 'all',
							ckModel : 'all',
							xtype : 'jtree',
							clazz : BasicModel,
							id : 'basicModel_main',
							region : 'center',
							mapper : 'id,modelName,modelParentId.id,iconCls,modelSort,modelJs,modelMain,modelIcon,modelType',
							order : ['modelSort->asc'],
							listeners : {
								cellcontextmenu : function(cmp, td, cellIndex, record, tr, rowIndex, e, eOpts) {
									e.preventDefault();
									e.stopEvent();
									if (record.isLeaf()) {
										record.set('checked', !record.get('checked'));
									}
								}
							},
							top : [$.treeSearch, '->', {
										text : '保存权限设置',
										key : 'S',
										cls : 'blue',
										handler : function() {
											basciPowerSave();
										}
									}],
							columns : [{
										flex : 1,
										text : '模块名称',
										name : 'text'
									}, {
										width : 200,
										name : 'modelType',
										renderer : $.dicRenderer('modelType',function(v,m){
												m.tdCls = 'td-blue';
										})
									}]
						}]
			})
}

// 保存设置
function basciPowerSave() {
	var data = [], sel = $('basciPower_role_west').select()[0];
	if (!sel) {
		return $.error('尚未操作任何角色!');
	}
	var roleId = sel.get('id');
	data = $('basicModel_main').getCheckedIds();
	// if (data.length == 0) {
	// return $.error('尚未操分配任何模块!');
	// }

	$.orm.mtm({
				clazz : BasicRoleModel,
				src : 'roleId',
				srcId : roleId,
				infos : [{
							tagerField : 'modelId',
							ids : data.join(',')
						}],
				callback : function() {
					$.show('模块分配成功.')
				}
			});

}
